from django.db import models

# Create your models here.
from django.db import models


class test_infor(models.Model):#测试用的数据库，测试后可以删除
    id = models.BigAutoField(primary_key=True)
    user_name=models.CharField(max_length=50,null=True)#用户名称;
    user_account=models.CharField(max_length=50,null=True)#用户名称;
    user_password=models.CharField(max_length=50,null=True)#用户密码;
    user_auth=models.CharField(max_length=50,null=True)#用户基本权限，只有几种：admin;
    creat_user_account = models.CharField(max_length=20,default='1',null=True)#创建该条信息的用户account
    data_owner_user_account = models.CharField(max_length=20,default='1',null=True)#数据属于哪个用户的account，一般情况下，创建数据的account=数据属于哪个用户的account
    update_user_account = models.CharField(max_length=20,default='1',null=True)#更新数据的用户account
    enter_account = models.CharField(max_length=20,default='1',null=True)#用户所属企业的account
    creat_time = models.DateTimeField(auto_created=True,null=True)#该条数据的创建时间
    update_time = models.DateTimeField(auto_now=True,null=True)#该条数据的更新时间

class user_infor(models.Model):#记录系统的用户信息
    id = models.BigAutoField(primary_key=True)
    user_name=models.CharField(max_length=50,null=True)#用户名称;
    user_account=models.CharField(max_length=50,null=True)#用户名称;
    user_password=models.CharField(max_length=50,null=True)#用户密码;
    user_auth=models.CharField(max_length=50,null=True)#用户基本权限，只有几种：admin;
    user_email = models.CharField(max_length=50, null=True)  # 用户邮箱;
    user_phone = models.CharField(max_length=50, null=True)  # 用户手机号;
    creat_user_account = models.CharField(max_length=20,default='1',null=True)#创建该条信息的用户account
    data_owner_user_account = models.CharField(max_length=20,default='1',null=True)#数据属于哪个用户的account，一般情况下，创建数据的account=数据属于哪个用户的account
    update_user_account = models.CharField(max_length=20,default='1',null=True)#更新数据的用户account
    enter_account = models.CharField(max_length=20,default='1',null=True)#用户所属企业的account
    creat_time = models.DateTimeField(auto_created=True,null=True)#该条数据的创建时间
    update_time = models.DateTimeField(auto_now=True,null=True)#该条数据的更新时间

class user_session(models.Model):#记录系统的用户session
    id = models.BigAutoField(primary_key=True)
    session_key=models.CharField(max_length=50,null=True)#session_键值;
    session_data=models.CharField(max_length=64,null=True)#session_数据;
    expire_date=models.DateTimeField(auto_created=True,null=True)#过期时间;

class auth_list(models.Model):#记录系统的基本权限列表信息，如admin等
    id = models.BigAutoField(primary_key=True)
    auth_name=models.CharField(max_length=50,null=True)#权限名称
    auth_url=models.CharField(max_length=50,null=True)#权限对应的跳转地址url
    creat_user_account = models.CharField(max_length=20,default='1',null=True)#创建该条信息的用户account
    data_owner_user_account = models.CharField(max_length=20,default='1',null=True)#数据属于哪个用户的account，一般情况下，创建数据的account=数据属于哪个用户的account
    update_user_account = models.CharField(max_length=20,default='1',null=True)#更新数据的用户account
    enter_account = models.CharField(max_length=20,default='1',null=True)#用户所属企业的account
    creat_time = models.DateTimeField(auto_created=True,null=True)#该条数据的创建时间
    update_time = models.DateTimeField(auto_now=True,null=True)#该条数据的更新时间

class auth_url_list(models.Model):#记录系统的权限及网页url列表信息，是对每个网页定义的权限数据库，是为权限扩充做准备的，正式启用(2021.10.5)。录入该表中的url都需要进行验证权限
    id = models.BigAutoField(primary_key=True)
    url_name=models.CharField(max_length=50,null=True)#url对应的菜单名称
    auth_url=models.CharField(max_length=50,null=True)#权限对应的跳转地址url
    auth_name=models.CharField(max_length=5,null=True)#角色信息，如admin等
    creat_user_account = models.CharField(max_length=20,default='1',null=True)#创建该条信息的用户account
    data_owner_user_account = models.CharField(max_length=20,default='1',null=True)#数据属于哪个用户的account，一般情况下，创建数据的account=数据属于哪个用户的account
    update_user_account = models.CharField(max_length=20,default='1',null=True)#更新数据的用户account
    enter_account = models.CharField(max_length=20,default='1',null=True)#用户所属企业的account
    creat_time = models.DateTimeField(auto_created=True,null=True)#该条数据的创建时间
    update_time = models.DateTimeField(auto_now=True,null=True)#该条数据的更新时间

class auth_menu_list(models.Model):#权限对应的目录，不同权限对应不同的目录
    id = models.BigAutoField(primary_key=True)
    #menu_id=models.CharField(max_length=50,null=True)#菜单的menu_id,如:admin1order1(管理员第一层目录第一个顺序的菜单)
    menu_name=models.CharField(max_length=50,null=True)#菜单名称
    menu_url = models.CharField(max_length=50, null=True)  # 菜单url
    menu_level=models.CharField(max_length=5,null=True)#菜单等级
    menu_father_id=models.CharField(max_length=50,null=True)#菜单对应的父menu_id,即上层菜单的menu_id
    menu_iclass_data=models.CharField(max_length=50,null=True)#餐单的图标信息
    menu_auth=models.CharField(max_length=50,null=True)#菜单对应的权限，即那种权限用的是这个菜单
    menu_list_order=models.CharField(max_length=50,null=True)#菜单顺序
    creat_user_account = models.CharField(max_length=20, default='1', null=True)  # 创建该条信息的用户account
    data_owner_user_account = models.CharField(max_length=20, default='1',
                                               null=True)  # 数据属于哪个用户的account，一般情况下，创建数据的account=数据属于哪个用户的account
    update_user_account = models.CharField(max_length=20, default='1', null=True)  # 更新数据的用户account
    enter_account = models.CharField(max_length=20, default='1', null=True)  # 用户所属企业的account
    creat_time = models.DateTimeField(auto_created=True, null=True)  # 该条数据的创建时间
    update_time = models.DateTimeField(auto_now=True, null=True)  # 该条数据的更新时间

class user_menu_list(models.Model):#权限对应的目录，不同权限对应不同的目录
    id = models.BigAutoField(primary_key=True)
    menu_id = models.CharField(max_length=50, null=True)  # 菜单的menu_id,如:admin1order1(管理员第一层目录第一个顺序的菜单)
    menu_name=models.CharField(max_length=50,null=True)#菜单名称
    menu_url = models.CharField(max_length=50, null=True)  # 菜单url
    menu_level=models.CharField(max_length=5,null=True)#菜单等级
    menu_father_id=models.CharField(max_length=50,null=True)#菜单对应的父menu_id,即上层菜单的menu_id
    menu_iclass_data=models.CharField(max_length=50,null=True)#餐单的图标信息
    menu_user=models.CharField(max_length=50,null=True)#菜单对应的用户，即哪个用户用的是这个菜单
    menu_list_order=models.CharField(max_length=50,null=True)#菜单顺序
    creat_user_account = models.CharField(max_length=20, default='1', null=True)  # 创建该条信息的用户account
    data_owner_user_account = models.CharField(max_length=20, default='1',
                                               null=True)  # 数据属于哪个用户的account，一般情况下，创建数据的account=数据属于哪个用户的account
    update_user_account = models.CharField(max_length=20, default='1', null=True)  # 更新数据的用户account
    enter_account = models.CharField(max_length=20, default='1', null=True)  # 用户所属企业的account
    creat_time = models.DateTimeField(auto_created=True, null=True)  # 该条数据的创建时间
    update_time = models.DateTimeField(auto_now=True, null=True)  # 该条数据的更新时间

class htmlurl_infor(models.Model):#记录网页的信息,如xxx.html，该网页的名称，url等
    html_name = models.CharField(max_length=20, default='1', null=True) #网页的名称
    html_url = models.CharField(max_length=20, default='1', null=True) #网页的链接()
    creat_user_account = models.CharField(max_length=20, default='1', null=True)  # 创建该条信息的用户account
    data_owner_user_account = models.CharField(max_length=20, default='1',null=True)  # 数据属于哪个用户的account，一般情况下，创建数据的account=数据属于哪个用户的account
    update_user_account = models.CharField(max_length=20, default='1', null=True)  # 更新数据的用户account
    enter_account = models.CharField(max_length=20, default='1', null=True)  # 用户所属企业的account
    creat_time = models.DateTimeField(auto_created=True, null=True)  # 该条数据的创建时间
    update_time = models.DateTimeField(auto_now=True, null=True)  # 该条数据的更新时间

class role_infor(models.Model):#记录系统角色的信息,如管理员，企业用户等
    role_name = models.CharField(max_length=20, default='1', null=True) #角色的名称
    role_str = models.CharField(max_length=20, default='1', null=True) #角色的字符串
    creat_user_account = models.CharField(max_length=20, default='1', null=True)  # 创建该条信息的用户account
    data_owner_user_account = models.CharField(max_length=20, default='1',null=True)  # 数据属于哪个用户的account，一般情况下，创建数据的account=数据属于哪个用户的account
    update_user_account = models.CharField(max_length=20, default='1', null=True)  # 更新数据的用户account
    enter_account = models.CharField(max_length=20, default='1', null=True)  # 用户所属企业的account
    creat_time = models.DateTimeField(auto_created=True, null=True)  # 该条数据的创建时间
    update_time = models.DateTimeField(auto_now=True, null=True)  # 该条数据的更新时间



#例子数据库
class classify_infor(models.Model):#记录分类信息的数据库
    id = models.BigAutoField(primary_key=True)
    class_name = models.CharField(max_length=50, null=True)  # 分类名称
    class_level = models.CharField(max_length=5, null=True)  # 分类等级
    class_father_id = models.CharField(max_length=50, null=True)  # 分类对应的父分类id,即上层分类的id
    class_list_order = models.CharField(max_length=50, null=True)  # 分类顺序
    creat_user_account = models.CharField(max_length=20, default='1', null=True)  # 创建该条信息的用户account
    data_owner_user_account = models.CharField(max_length=20, default='1',null=True)  # 数据属于哪个用户的account，一般情况下，创建数据的account=数据属于哪个用户的account
    update_user_account = models.CharField(max_length=20, default='1', null=True)  # 更新数据的用户account
    enter_account = models.CharField(max_length=20, default='1', null=True)  # 用户所属企业的account
    creat_time = models.DateTimeField(auto_created=True, null=True)  # 该条数据的创建时间
    update_time = models.DateTimeField(auto_now=True, null=True)  # 该条数据的更新时间


#正式使用的数据库信息


